vstest 🚀

您所在的位置:网站首页 docker 修改hosts vstest 🚀

vstest 🚀

2022-12-27 08:33| 来源: 网络整理| 查看: 265

如所描述这里运行特定的测试mcr.microsoft.com/dotnet/core/里面的场景SDK:3.1高山崩溃,并以下消息:

活动的测试运行已中止。

测试运行中止。 测试总数:未知通过:32 总时间:51.0251 秒完成执行任务“Microsoft.TestPlatform.Build.Tasks.VSTestTask”——失败。 1:7> 在项目“InkBall.Tests.csproj”中构建目标“VSTest”——失败。 1:7> 完成构建项目“/srv/InkBall/test/InkBall.Tests/InkBall.Tests.csproj”(VSTest 目标)——失败。

构建失败。 0 警告 0 错误

它仅在Alpine 3.12 3.1.302-alpine3.12, 3.1-alpine3.12, 3.1.302-alpine, 3.1-alpine docker image下可见和可重现。 在Alpine 3.11 3.1.302-alpine3.11、3.1-alpine3.11下运行的同一批测试场景工作正常。

重现步骤

我已经准备好了 copy-n-paste repro 准备好从命令行运行,它将启动 docker 容器、git clone repo 和 dotnet 运行测试。 Docker 容器使用堆栈跟踪转储功能运行,并且能够拦截和分析故障转储。

#run latest SDK alpine-3.12 image with dump capabilities docker run -it --rm --cap-add=SYS_PTRACE mcr.microsoft.com/dotnet/core/sdk:3.1-alpine # #now inside container #we'll be using git apk add git # #some trivialities alias ll='ls -lah --color' cd /srv/ #clone my repo with tests git clone https://github.com/ChaosEngine/InkBall.git #go to test project cd InkBall/test/InkBall.Tests/ dotnet restore -r alpine-x64 dotnet build #allow to make core dumps export COMPlus_DbgEnableMiniDump=1 #install needed tools :-) dotnet tool install --global dotnet-gcdump dotnet tool install --global dotnet-dump export PATH="$PATH:/root/.dotnet/tools" #finaly run the tests!!111one dotnet test -v d # #it takes some time to generate dump # #now analyze it dotnet-dump analyze /tmp/coredump.* -c clrstack 预期行为

所有测试都成功运行

实际行为

活动的测试运行已中止。 原因:测试主机进程崩溃

诊断日志

当正在分析核心转储跟踪时,发出 clrstack 后可以看到以下内容:

OS Thread Id: 0x193 (0) Child SP IP Call Site 00007FFE58E5CD20 00007f5061c45878 [GCFrame: 00007ffe58e5cd20] 00007FFE58E5CE00 00007f5061c45878 [HelperMethodFrame_1OBJ: 00007ffe58e5ce00] System.Threading.Monitor.ObjWait(Boolean, Int32, System.Object) 00007FFE58E5CF30 00007F4FE7530A14 System.Threading.ManualResetEventSlim.Wait(Int32, System.Threading.CancellationToken) 00007FFE58E5CFC0 00007F4FE75452C0 System.Threading.Tasks.Task.SpinThenBlockingWait(Int32, System.Threading.CancellationToken) [//src/System.Private.CoreLib/shared/System/Threading/Tasks/Task.cs @ 2922] 00007FFE58E5D020 00007F4FE7545164 System.Threading.Tasks.Task.InternalWaitCore(Int32, System.Threading.CancellationToken) [//src/System.Private.CoreLib/shared/System/Threading/Tasks/Task.cs @ 2861] 00007FFE58E5D070 00007F4FE7544ED7 System.Threading.Tasks.Task.Wait(Int32, System.Threading.CancellationToken) [//src/System.Private.CoreLib/shared/System/Threading/Tasks/Task.cs @ 2772] 00007FFE58E5D0A0 00007F4FE7544DF2 System.Threading.Tasks.Task.Wait() [//src/System.Private.CoreLib/shared/System/Threading/Tasks/Task.cs @ 2655] 00007FFE58E5D0B0 00007F4FE7A1FD63 Microsoft.VisualStudio.TestPlatform.TestHost.DefaultEngineInvoker.Invoke(System.Collections.Generic.IDictionary`2) 00007FFE58E5D130 00007F4FE7A171AC Microsoft.VisualStudio.TestPlatform.TestHost.Program.Run(System.String[]) 00007FFE58E5D160 00007F4FE7A10495 Microsoft.VisualStudio.TestPlatform.TestHost.Program.Main(System.String[]) 00007FFE58E5D498 00007f5060e2ecff [GCFrame: 00007ffe58e5d498] 00007FFE58E5D980 00007f5060e2ecff [GCFrame: 00007ffe58e5d980]

错误的根本原因可能隐藏在这里

环境

请分享有关测试环境的其他详细信息。

docker alpine 3.12 sdk 镜像。 我的重现步骤也在这个要点中可见



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3